home *** CD-ROM | disk | FTP | other *** search
/ Aminet 3 / Aminet 3 - July 1994.iso / Aminet / util / shell / AXshDemo131.lha / AXshAdmManual < prev    next >
Encoding:
Text File  |  1994-03-28  |  85.6 KB  |  2,379 lines

  1. *****************************************************************************
  2.     .      .               .         ___                           .  _  .
  3.    /|\ / _ |_     _     _ -+- _ . .   |         _ ._  _ . _ ._    /| ' )/|
  4.   /-| X (_`| |   (_`| |(_` | |_)|V|   |     \ /|_)| `(_`|/ \| |    |  <  |
  5.  /  |/ \._)| |   ._)|_|._) |_|_,|||  _|_     V |_,|  ._)|\_/| |    |o._) |
  6.                     ._|
  7.                                        10-Mar-94  © Digital Design 1991-1994
  8. *****************************************************************************
  9.  
  10.  
  11.         S y s t e m   a d m i n i s t r a t o r ' s
  12.         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  13.         r e f e r e n c e   m a n u a l
  14.         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  15.  
  16. 1.0 Getting started
  17.  
  18.     1.1    Installing AXsh system
  19.     1.2    Using AXsh with other software
  20.     1.3    Adding and removing users
  21.     1.4    Security
  22.     1.5    Helping users
  23.     1.6    Manuals
  24.     1.7    Installing new software
  25.     1.8    Administrator's daily duties
  26.     1.9    Short introduction to the programs
  27.     1.10    Problems and answers, tips and tricks
  28.  
  29. 2.0 Configuring and customizing AXsh
  30.  
  31.     2.1    /etc/rc
  32.     2.2    /etc/rc.server
  33.     2.3    /etc/rc.ffe
  34.     2.4    /etc/rc.news
  35.     2.5    /etc/rc.mail
  36.     2.6    /etc/crontab
  37.     2.7    /etc/issue and /etc/motd
  38.     2.8    /etc/forbiddenvars
  39.     2.9    /etc/globallogin
  40.     2.10    /etc/nologin
  41.     2.11    /etc/adm/ directory
  42.     2.12    /etc/xprotos.tab
  43.     2.13    /etc/Questionnaire
  44.     2.14    /etc/adm/Answers
  45.     2.15    /etc/exampleuser/ directory
  46.     2.16    /etc/register.*
  47.  
  48. 3.0 Networking under AXsh
  49.  
  50.     3.1    Network installation
  51.     3.2    Creating a node
  52.     3.3    Creating a new network
  53.     3.4    Connecting to Internet
  54.     3.5    UUCP
  55.     3.6    AXnet mail
  56.     3.7    AXnet news
  57.  
  58. 4.0 Registering AXsh
  59.  
  60.     4.1    Registering form
  61.     4.2    Bug report form
  62.     4.3    New application report form
  63.     4.4    Author
  64.     4.5    Copyright notices
  65.  
  66.  
  67. *****************************************************************************
  68. 1.0 Getting started
  69.  
  70. AXsh is a shell based local communication software, which allows remote users
  71. to connect to your machine.  AXsh can also be run under UUCP, but you need to
  72. do some changes to some of the configuration files.  AXsh consists of three
  73. main parts:  the AXsh shell software, AX-sysghost, which holds information
  74. about users and AX-server, which takes incoming calls, starts AXsh etc.  AXsh
  75. supports multiple users, multiple lines and different user levels.  You can
  76. define allowed commands and directories for each user level.  Command
  77. arguments can also be restricted to home directory or to allowed directories.
  78.  
  79. AXsh is a SHAREWARE product and the REGISTRATION fee is about US$ 30, 150
  80. FIM.  We'll accept any other currency too, because that is more convinient
  81. for everybody, but US$ and FIM are preferred.  The cheapest way to send the
  82. money is in cash in a letter.  PLEASE, DO NOT send cheques, it costs me 60
  83. FIM (40%) to cash them, no matter whatever kind of cheques they are!
  84.  
  85. If you don't plan to register, but have an Internet mail address, you should
  86. still send some mail so I can keep you upto date about updates to the demo
  87. distribution.  We are developing the system constantly and all comments and
  88. bug reports are welcomed.  (See the addresses in the end of this document.)
  89.  
  90. Before you start to install, you should check that your system is capable of
  91. running AXsh.  Here is a list of things you should have:
  92.  
  93.     - Amiga 500/600/1000/2000/2500/3000/3000T/4000..
  94.     - at least 0.5 MB of memory (>1M recommended)
  95.     - at least 5 MB of hard disk space for AXsh in a public system
  96.     - Hayes standard modem connected to Amiga via RS-232
  97.       for remote connection
  98.  
  99. You also need:
  100.  
  101.     - KS2.0 or newer (OR arp.library v39)
  102.     - LhA to unpack the packet and language archive
  103.     - C= Installer in SYS:System (or just in WB path) to use
  104.       the 2.0 install script
  105.  
  106. To use network or file transfer:
  107.  
  108.     - xprzmodem.library 2.52 or newer
  109.     - any other xprotocol library
  110.  
  111.  
  112. IMPORTANT!
  113.     1.31 will be the last ks1.3-compatible version. Next version will
  114.     REQUIRE ks2.0 or later.
  115.  
  116. WARNING!
  117.     The program icons that come in this package don't work with
  118.     ks1.3 ! For example the AXsh icon which starts an AXsh session
  119.     will certainly crash your ks1.3-machine.
  120.  
  121. The disk space usage can be controlled by yourself.  If you don't have 5 megs
  122. of disk space for AXsh, don't take Internet news or hundreds of users.
  123. Frankly, it's up to you.  Kickstart 2.0 is recommended, but not currently
  124. needed.
  125.  
  126. If you need to know about AXsh shell itself or about other programs, just
  127. read the appropriate man-files. This document discusses only the installation
  128. and configuration-related topics. There are many useful features described
  129. in the manual pages, so it really pays off to read them. This document does
  130. not cover using the shell itself, read axsh.man!
  131.  
  132. In this manual some of the paths are defined this way:  /etc/adm/ .  "/"
  133. means root directory, in this case the AXsh:  assign.  /etc/adm means
  134. AXsh:etc/adm.  In AXsh they both work just fine.
  135.  
  136.  
  137. *****************************************************************************
  138. 1.1 Installing AXsh system
  139.  
  140. For automatic installation you need a formatted disk.  You should use a FFS
  141. format floppy, otherwise everything wont fit into the disk.  You can also
  142. install AXsh from a harddisk partition, if you unpack the InstallDisk packet
  143. and assign AXshPack: to that directory. If you don't have possibilities to use
  144. an FFS format disk, you can install the system by hand.
  145.  
  146.     format drive df0: name AXshPack NOICONS FFS
  147.  
  148. When you have a disk ready, unpack the AXsh packet to it:
  149.  
  150.     lha x InstallDisk df0:
  151.  
  152. You can do the above also automatically with the MakeInstallDisk ICONX script.
  153. Just double-click the MakeInstallDisk icon from the WorkBench.
  154.  
  155. Now you can just double click the disk icon and select the appropriate
  156. install script for your system.  The installer will ask you to select the
  157. right drawer and files to install. If you want to neatly install AXsh to
  158. its own directory, you should create a subdirectory. The install script
  159. will place AXsh directories to the directory you select and won't create
  160. its own AXsh directory. This is because I want the install script to be
  161. able to do the installation into a hard disk partition also.
  162.  
  163.  
  164. *****************************************************************************
  165. 1.1.2 Installing by hand
  166.  
  167. Create a new directory or a partition for AXsh and make an assign to point to
  168. that directory:
  169.  
  170.     assign AXsh: <AXsh directory>
  171.     e.g. : assign AXsh: DH0:Communications/AXsh/
  172.  
  173. If you prefer a partition for AXsh, it's reasonable to label it `AXsh':
  174.  
  175.     relabel <partition name> AXsh
  176.     e.g. :  relabel DH4: AXsh
  177.  
  178. And now when you write the following command line:
  179.  
  180.     cd AXsh:
  181.  
  182. ..you should be in your local AXsh directory.  If any system requesters
  183. appear, you've done something wrong above. At this point, unpack the packet
  184. to the directory/disk:
  185.  
  186.     lha x InstallDisk AXsh:
  187.  
  188. This will take a while to be executed.  It unpacks the AXsh packet to your
  189. (hopefully) hard disk.  After the shell prompt appears again, you should have
  190. all files unpacked. You should consult chapter 2.0 for customizing configuration
  191. files to fully use AXsh cababilities.  Now, try this from any CLI or shell:
  192.  
  193.     path AXsh:bin/
  194.     AXsh -con
  195.  
  196. AXsh version string and login prompt should appear.  Give login name 'root' and
  197. password 'root'.  Now you should notice if you have succeeded in the
  198. installation process.  Use "exit" to terminate an AXsh session.  You can get
  199. more information about the AXsh shell itself from its own manual:
  200. /man/AXsh.man.
  201.  
  202.  
  203. If you want to use AXsh remotely, you have to make NEWAUX: available:
  204.  
  205.     mount NEWAUX: from AXsh:etc/Mountlist.AXsh
  206.  
  207. Now NEWAUX:  handler is added to the system and it is ready to handle the
  208. builtin serial line.  If you want to use a different serial device, refer to
  209. section 2.2 about /etc/rc.server and the manual pages for ax-server and
  210. newaux-handler. You can now start the AX-server with "AX-server".
  211.  
  212. If you do not start AX-sysghost, the first AXsh run will start it
  213. automatically.  The sysghost is the program that monitors the system load,
  214. uptime and delivers write-messages between users and also keeps record
  215. of the user variables.
  216.  
  217. Next thing to do is to make the mounting procedure automatic.
  218. If you're running AmigaOS 2.0 or higher, do the following:
  219.  
  220.  
  221. AmigaOS 2.0 installation:
  222.  
  223. Edit s:user-startup using your favourite text editor and write:
  224.  
  225.     assign AXsh: <AXsh directory>
  226.     mount NEWAUX: from AXsh:etc/Mountlist.AXsh
  227.  
  228. After that, save the user-startup and open the AXsh installation diskette's
  229. Storage directory from Workbench.  You'll see icons with an A on the top left
  230. corner.  Move these icons to your boot disc's WBStartup directory.  Now, when
  231. system opens Workbench, it automatically launches these programs.  If you're
  232. not using Workbench, follow the AmigaOS 1.3 installation steps, but edit
  233. s:user-startup instead of s:startup-sequence.
  234.  
  235.  
  236. AmigaOS 2.1 installation:
  237.  
  238. In addition to the AmigaOS 2.0 installation steps move the NEWAUX handler from
  239. the AXsh installation diskette's Storage/DOSDrivers directory to the system
  240. Devs/DOSDrivers directory and leave out the mount command from the
  241. user-startup. You should also unpack the locale system files to the Locale:
  242. directory as well as the catalog files, if you want to use other languages
  243. than the default English.
  244.  
  245.     lha x AXshPack:Storage/Locale/Catalogs Locale:Catalogs
  246.  
  247. Currently AXsh (the shell itself), Mail and Ami (private mail programs),
  248. Rn (news reader) and FFE (file frontend) all support WB2.1 locale.library.
  249. Included languages are:
  250.  
  251. English   Default (Included in the programs)
  252. suomi      (Finnish)    by Pasi Ojala        albert@cs.tut.fi
  253. français  (French)    by Cedric Beust        Cedric.Beust@sophia.inria.fr
  254. dansk      (Danish)    by Soeren Berg Hansen    siera@imada.ou.dk
  255. español      (Spanish)    by Sebastian Delmont    sdelmont@dino.conicit.ve
  256. svenska      (Swedish)    by Morgan Ericsson    morgan@krynn.augs.se
  257. deutsch   (German)      by Mirko Thiesen and «various others»
  258.  
  259. Thousand thanks and happy and productive future to all translators. If you
  260. are willing to do translation to your own language, just contact me.
  261.  
  262.  
  263. AmigaOS 1.3 installation:
  264.  
  265. Edit s:startup-sequence using your favourite text editor and write before the
  266. endcli >nil:  command:
  267.  
  268.     assign AXsh: <AXsh directory>
  269.     execute AXsh:etc/Startupadd.AXsh
  270.  
  271. And that's it.  Save the modified startup-sequence and try booting the
  272. machine.  You may check the Startupadd.AXsh file to see what is done there.
  273.  
  274.  
  275. *****************************************************************************
  276. 1.2 Using AXsh with other software
  277.  
  278. AXsh can be used as a BBS software by itself, but it can also be used with
  279. other software packages. AXsh can be setup to run under DLG and other
  280. 'traditional' bulletin board systems that support the door-concept and
  281. you can use TrapDoor and UUCP Getty instead of AX-server, if you also handle
  282. Fidonet or UUCP traffic.
  283.  
  284. Here is an example of TrapDoor settings:
  285.     BBSmode Spawn
  286.     BBSCommand "execute AXsh:etc/remote-startup"
  287.     BBSInOut "AXAUX:serial.device/0/shared/speed%B"
  288.     Serialname serial.device
  289.     Serialunit 0
  290.     Baud 19200
  291.  
  292. We have also included instructions how to use AXsh under UUCP, but you have
  293. to go through all the configuration files and change them according to
  294. the instructions.
  295.  
  296. Also, take a look into the /info/InOtherSystems directory, where I have
  297. added several files that are relevant when using AXsh as a door or with
  298. other software.
  299.  
  300.  
  301. *****************************************************************************
  302. 1.3 Adding and removing users
  303.  
  304. Administrator's most important task in administrating is keeping track of
  305. users.  In AXsh this part is made fairly easy.  Users can register themselves
  306. by giving a login name 'new' (this feature can be disabled if needed, see
  307. /etc/rc), which invokes a program called AXsh:bin/register.  It asks for the
  308. desired login name, user's real name, password and the administrator can ask
  309. them what ever he or she wants depending of the contents of
  310. AXsh:etc/questionnaire.  You can also edit the /etc/register.*-files to your
  311. preference or you can replace the register command with a program that just
  312. takes the information about the new user and you create the account after
  313. verifying the user. Registering features and questionnaire file are explained
  314. more carefully in chapter 2.10.
  315.  
  316. The default register program creates new accounts automatically, so you don't
  317. have to do that either.  The only thing you must do is to check users'
  318. information. All the answers to the questions are collected into one file
  319. called AXsh:etc/adm/answers.  The filename can also be changed by modifying
  320. AXsh:etc/rc.
  321.  
  322. Users can also be added manually by using passwd. However, you should notice
  323. that passwd does NOT create home directories nor does it copy any default
  324. files, it simply adds the login name to the system. Because of this, it
  325. is adviced that you use register to add new users, even if you do that
  326. locally. On the other hand, using passwd directly is the only way to make
  327. two login names use the same home directory, if that kind of feature is
  328. needed.
  329.  
  330. Removing users needs some more effort.  You have to know the user's login
  331. name and you have to be logged in as a superuser.  Usually login name 'root'
  332. has this access level.  If you are using an AmigaShell, you can use the
  333. supplied 'login' command to set the superuser bit (login 32768).  When you
  334. decide to remove a user, you must be sure, that it is what you really want to
  335. do, because there is no way to get user's account back after removing it.
  336.  
  337.     passwd -r <user's login name>
  338.  
  339. This line removes user's account from AXsh:etc/passwd file.  This WILL NOT
  340. delete the user's home directory or any other files belonging to the user
  341. (like the system mailbox), so you have to do that yourself.  Depending
  342. on the configuration you go to system's home directory (usually AXsh:home/)
  343. and type the following line:
  344.  
  345.     delete <users login name> all quiet
  346.  
  347. Delete is a standard AmigaDOS command.  For further information consult your
  348. AmigaDOS user's manual.
  349.  
  350. With passwd you can also change user quotas and accesslevels. Passwd -l will
  351. list all users in /etc/passwd-file and passwd -ll will list available user
  352. level names. Passwd in also used to change real names and passwords (as the
  353. command name implies :-).
  354.  
  355. Since AXsh version 1.31 you can also define a full path for the passwd-file.
  356. So, it is possible to move it away from the /etc directory to a 'safer'
  357. location. See the %passwdfile:-entry in /etc/rc.
  358.  
  359. *****************************************************************************
  360. 1.4 Security
  361.  
  362. Security is a top priority thing on an AXsh system.  It's up to you how much
  363. privileges you give to a user.  It's not very wise to give executing
  364. privileges to 'format' for access level 'normal'.  If you run a closed
  365. system with just few known users, it's not that important as long as you
  366. don't give executing privileges for intuition based programs.
  367.  
  368. You also control which directories the users have access to. However, if
  369. you give the user any of the superuser levels, he has access everywhere.
  370. Still, only the commands defined in the rc file can be used remotely.
  371.  
  372. In a public system it's very important to double check the users for whom
  373. you're giving higher privileges than 'normal'.  Any other user except 'root'
  374. should not have access level 'superuser'.  Normally it's not necessary to
  375. give a user special privileges.  'Normal' would do just fine.  You can add
  376. quota or unset it, if you've got enough storage space.  There are also other
  377. user levels, you can read about them in the configuration part.
  378.  
  379.  
  380. *****************************************************************************
  381. 1.5 Helping users
  382.  
  383. Because AXsh is not a traditional BBS software, there will be some problems,
  384. if you run a public system.  That's why it's essential to keep all the manual
  385. pages in sight.  /etc/motd file (message of the day) should contain
  386. information about how to get manual references and manual pages
  387. (man -k - and man <name>).
  388.  
  389. If you want to make the use of the system easier to your users, you can
  390. use the alias system to make menus and one-letter command aliases.
  391. For example, you can have something like "execute /etc/systemaliases" in
  392. the default .login-file and have all system-wide setup done in that
  393. file (/etc/systemaliases). Just keep in mind that all commands in that
  394. file are executed with the user privileges.
  395.  
  396. *****************************************************************************
  397. 1.6 Manuals
  398.  
  399. Manuals are AXsh's online help for a user.  They should ALWAYS be stored in
  400. AXsh:man/ directory.  As mentioned above, manual pages are read with the man
  401. command.  It is also possible to search for a manual entry with a reference
  402. key.  It might be for example the word 'user'.  When you write the command
  403.  
  404.     man -k user
  405.  
  406. man displays all the manual pages' reference lines which contain something
  407. about users.  Let's try it:
  408.  
  409.     man -k user
  410.  
  411. finger     -(AXsh) show user information
  412. irc     -(AXsh) multiuser chat utility: (Non-internet-relay chat)
  413. passwd     -(AXsh) manipulate userfile
  414. register-(AXsh) ask facts about the user and create an account
  415. who     -(Shell) show users currently on the system,terminals,times
  416. write     -(Shell) send a message to another user
  417.  
  418. OK.  Now we have the refernce lines on the screen.  If `write' is the needed
  419. command, just write:
  420.  
  421.     man write
  422.  
  423. and the manual page for write appears on the screen.  Online manuals work
  424. very much the same way as in Unix, but they are not separated in classes.
  425. All the manual pages are stored directly under AXsh:man/. Manual reference
  426. lines are stored in AXsh:man/Reference.
  427.  
  428. You might use a separate man program, if it checks and obeys BREAK-signals
  429. (ctrl-c sent by the user or the corresponding signal sent directly to the
  430. program). You also should have /checkcd defined in the AXAUX-filename.
  431.  
  432.  
  433. *****************************************************************************
  434. 1.7 Installing new software
  435.  
  436. AXsh is being updated all the time.  New versions of programs and whole new
  437. programs are released moderately often.  It's your job to install new
  438. software so that it works correctly.  In addition to this you should have
  439. some local news groups in which you inform local users about this new software
  440. or modification, so that they can benefit from it as well.  After you've
  441. tested the new software locally, you can add execute privileges for users.
  442.  
  443. Installing new version of an old program is not that complicated.  Just move
  444. the program in correct directory (usually AXsh:bin/) and check that
  445. everything works. See also if any modifications to the settings is needed.
  446.  
  447. If you have received a whole new release of AXsh, read carefully all the
  448. update files before installing.  You should also install AXsh into a new
  449. drawer or first copy the configuration files you have personalized or
  450. otherwise modified.  There may also be some programs to change the news
  451. subsystem or other parts of the system to a new format.  (Upgradenews
  452. converted version1.24 news system to 1.25 format.)
  453.  
  454.  
  455. *****************************************************************************
  456. 1.8 Administrator's daily duties
  457.  
  458. There are couple of things that administrators should perform daily.  If
  459. you're using cron (CyberCron, dcron), you can do these tasks automatically.
  460. First, you must move all the user log files away from AXsh:etc/adm/.
  461. They are named as follows:
  462.  
  463.     Log<date>-<time>-<tty>
  464.  
  465. AXsh stores what the user has written to these log files if -log option is
  466. given as a command line argument. It's recommended to use this option with a
  467. public system.  If something goes wrong, you can easily check what the user
  468. was doing when it happened.
  469.  
  470. If you're on a net, a file called AXsh:etc/adm/netlog will contain
  471. information whether a netcall succeeded or not.  By using the program
  472. /bin/userstat (and netstat, which is now obsolete) you can analyze this file.
  473. But if you have a lot of news groups, this log file may get very big in a
  474. very short time.  That's why you should make it shorter every now and then.
  475.  
  476. The third thing you have to do DAILY, if you're running a public system:
  477. Check the answer file AXsh:etc/adm/answers.  If there's Donald Ducks or other
  478. jokers, just kick them out.  It's too big security risk to let them be there.
  479. But don't worry, no one has ever overstepped his access level on a correctly
  480. installed AXsh system. Ever.
  481.  
  482. XPR saves information about downloads and uploads to the file /etc/adm/Xpr.log,
  483. so that you can see what files are most popular and what files are uploaded.
  484. Each line lists date, size of the file, cps-rate, user, protocol and
  485. filename.
  486.  
  487. And of course you have to read your mail and news.
  488.  
  489.  
  490. *****************************************************************************
  491. 1.9 Short introduction to the programs
  492.  
  493. This is a short introduction to the programs, so that you know which
  494. program does which. Most of the programs also have manual pages
  495. (possibly outdated though) and the programs also spit out usage lines when
  496. they are started without arguments or with -? or -h.
  497.  
  498.  
  499. AXsh
  500.     The shell. AXsh handles the login process, command line
  501.     editing, argument and command checking and execution. AXsh
  502.     also has its script language and variables. You can also
  503.     assign macros to functions keys and use the filename-completion
  504.     feature.
  505.  
  506.  
  507. System utilities:
  508.  
  509. NEWAux-Handler
  510.     This handler does the communication between the serial port
  511.     and the programs. (If you have remote connection.)
  512.     (If you are not using the builtin serial and the handler
  513.      doesn't seem to work with your serial card, you should
  514.      revert to the older version (AXAUX-handler). However, you
  515.      lose some of the features the new handler provides.)
  516.  
  517. ax-server
  518.     This server handles incoming calls, adjusts the baudrate if
  519.     needed and starts new process for remote login. The server
  520.     also handles net calls. You can also use Getty, if you need
  521.     to handle UUCP as well, or you can place AXsh under a 'normal'
  522.     BBS program as a 'door' program.
  523.  
  524.     AX-server will open a small window and will promptly show the
  525.     name of the configuration file it is using. After you activate the
  526.     window you can press the menu button on your mouse. The window
  527.     should expand to include two gadgets called "Console" and "Terminal".
  528.     If you press the Console-gadget, the server will start a new AXsh
  529.     session on console (this is controlled by the %newcon: entry in
  530.     /etc/rc.server).  If you press the Termina-gadget, the server will
  531.     release the serial device so that you can start a terminal program.
  532.     When you are done with the serial, press the gadget again and the
  533.     server will try to allocate the serial again.
  534.  
  535.     AX-server now also locks the serial port, so now you can use a
  536.     'lockserial' program or a terminal program that itself uses the
  537.     OwnDevUnit.library. In this case you don't have to use the terminal
  538.     gadget at all. OwnDevUnit.library must be found from libs:, otherwise
  539.     no locking is used. However, AX-server DOES NOT lock the serial
  540.     for the command. You could add a lockserial command to the
  541.     /etc/remote-startup file.
  542.  
  543. ax-sysghost
  544.     This program keeps track of the users and their variables.
  545.     It also keeps track of the system load. The sysghost should be
  546.     started on startup, but AXsh will try to start it itself if it's
  547.     not running.
  548.  
  549. killsysghost
  550.     If you need to get rid of the sysghost, this program sends
  551.     a quit-message to it. However, sysghost can't exit if there
  552.     are users logged in.
  553.  
  554.  
  555. AmigaDOS utilities:
  556.  
  557. uptime
  558. who
  559. login
  560. kick
  561.     These utilities may be used when using the AmigaDOS shell.
  562.     Uptime, who and kick work in the same way as the corresponding
  563.     AXsh internals, login may be used to set the UserID associated
  564.     with each process. (See also top)
  565.  
  566.  
  567. Mail system:
  568.  
  569. ami
  570. mail
  571. mailserver
  572.     Ami and mail are used when reading and sending private mail.
  573.     Mailserver is used to distribute mail received from other
  574.     systems. AXsh mail uses To:-line when delivering mail, so
  575.     it has to generate a new message for each Cc:, and Bcc: is
  576.     quite hard to implement.
  577.  
  578.     However, you can also configure the mail system so that you can
  579.     use UUCP-mail or other mail systems.
  580.  
  581.  
  582. News system:
  583.  
  584. rn
  585.     Rn contains the whole news system. With rn you both read news
  586.     and handle all the news administration tasks. You can also
  587.     configure the news system, so that you can use UUCP-news or
  588.     CNews systems.
  589. nntpnews
  590.     Nntpnews is a simple program which uses NNTP to import news
  591.     from an Internet news server (exporting is not implemented).
  592.     This program is available on seperate request.
  593.  
  594.  
  595. AXsh networking:
  596.  
  597. net
  598.     This program uses xprzmodem.library to transfer news and
  599.     mail packets between two AXsh systems. It also needs
  600.     rn, mailserver and C:LhA.
  601.  
  602.     You can also use Fidonet transport mechanism (with TrapDoor)
  603.     to exchange the packets. There will be AREXX script files
  604.     in this package that handle this.
  605.     (Kindly provided by a user.)
  606.  
  607.  
  608. File system:
  609.  
  610. XPR
  611.     XPR handles file transfer. Both upload and download is
  612.     available and different protocols and settings can be
  613.     easily added. XPR can use any xprotocol-library. The
  614.     package includes several settings for zmodem, ymodem and
  615.     xmodem transfers.
  616. FFE
  617.     FFE is the file front end. It is a 'graphical' user interface,
  618.     quite like DirWork and Directory opus. You can move in
  619.     the filesystem, read filenotes (file filenotes or seperate
  620.     description files), see text file contents or packet
  621.     (lha and lzh) contents and transfer files with XPR or just
  622.     move them to the home directory where they can be further
  623.     processed (like only download one file from the packet).
  624.  
  625.  
  626. User accounts:
  627.  
  628. passwd
  629.     With passwd you can change password, user name, quota,
  630.     accesslevel and add or remove users, list all users or
  631.     'finger' a user.
  632. register
  633.     Register takes the user's name and other data and creates
  634.     a new account and a home directory and the default files
  635.     automatically.
  636.  
  637.  
  638. Information and statistics:
  639.  
  640. calendar
  641. mach
  642.     Calendar displays the calendar page for current month and
  643.     mach determines which processor and co-processors you have.
  644. netstat
  645.     Displays statistics of the received news articles.
  646.     Now obsolete, use userstat instead.
  647. top
  648.     Shows processes and tasks running in the system, their
  649.     names, states, stacks, priorities, CLI numbers and owners.
  650.     You can also hide libraries, devices and handlers from the
  651.     listing.
  652. userstat
  653.     Displays various statistics from various subjects. Includes
  654.     TOP 10 lists for users by calls and time, for downloads and
  655.     uploads by number of times and bytes, and for net activity.
  656.     Also displays most popular files and graphical representation
  657.     of the system utilization. Long display format displays
  658.     everything, normally only first 10 entries are displayed.
  659.  
  660.  
  661. File handling utilities:
  662.  
  663. cat
  664.     Spits files to the standard output.
  665. more
  666.     Shows files with a pager. Doesn't handle input from standard
  667.     input though.
  668. wc
  669.     Word counter. Counts chars, words and lines in files.
  670.  
  671.  
  672. Nice utilities:
  673.  
  674. Italics
  675. banner
  676. bigtext
  677.     These programs use ASCII graphics to display text in
  678.     bigger font. Banner uses a five-row-high font, bigtext
  679.     and italics use a three-line-high font.
  680. du
  681.     Shows disk usage.
  682. editor
  683.     AXsh's full-screen editor. Does not work very well, but
  684.     is better than nothing. Put "set term vt100" into your .login
  685.     if you have adequate terminal emulation. It seems that
  686.     vt100/vt102 terminals get confused if used in ANSI-mode.
  687. ls
  688.     A directory lister which also shows group and world protection
  689.     bits. Does not handle wildcards.
  690. cc
  691.     Consolechat utility. cc opens a window into the WB screen
  692.     and so the user can talk with the system administrator.
  693.     CC is a lot like U*ix talk.
  694. man
  695.     Displays manual pages or searches for references.
  696.  
  697.  
  698. *****************************************************************************
  699. 1.10 Problems and answers, tips and tricks
  700.  
  701. Problem:
  702.     I have a problem with users logging in via a modem.  When the modem
  703.     answers the phone it send a carrier and then after 2 or 3 seconds
  704.     hangs up.  I have a SupraFaxModem 14,400 running with an Amiga
  705.     2000HD.
  706. Reason:
  707.     This must be the 'CD never gets up after DTR goes down'-bug..  In
  708.     SupraFaxModem the Carrier Detect line drops when DTR line goes
  709.     inactive, but it never comes up again even if DTR goes active again.
  710.     This is why the computer thinks that the carrier has dropped and
  711.     hangs up.
  712. Solution:
  713.     Increase the DTR delay register, add s25=255.
  714.     You can also use Getty (UUCP 1.16D) to take the incoming calls.
  715.     Getty does not release the serial, so DTR never drops.
  716.     You should also have the modem ignore DTR, &d0.
  717.  
  718.  
  719. Problem:
  720.     I have a ZyXEL U1496E. When I set the serial speed to 38400 the
  721.     program does not work correctly. The highst possible speed is
  722.     19200.
  723. Reason:
  724.     AXAUX normally gets the serial speed from the preferences and
  725.     possible speeds only include speeds upto 19200 bps.
  726. Solution:
  727.     Use 19200 or add /speed38400/ to the axaux-filename and use that
  728.     speed in %bpslock:
  729.  
  730.  
  731. Problem:
  732.     Editor thinks that it has more lines than it has.
  733. Reason:
  734.     Actually, your window is too narrow. Editor does not really read the
  735.     columns variable, but assumes that you have 80 columns.
  736. Solution:
  737.     Add a little overscan and make the window bigger. A window of 664x216
  738.     is the right size in ks2.0. In ks1.3 you have to get/use a new
  739.     preferences program.
  740.  
  741.  
  742. Problem:
  743.     I am running AXsh in ks1.3 and AX-server freezes after the user has
  744.     logged out, or the machine GURU's when loggin in.
  745. Reason:
  746.     The same AX-server works well in >ks2.0, but in ks1.3 Execute() does
  747.     need valid input and output filehandles, which AX-server didn't have
  748.     in release 1.3.
  749. Solution:
  750.     Use AX-server version 1.2 or newer. In this version the server
  751.     opens two dummy filehandles so that it would work with ks1.3.
  752.  
  753.  
  754. Problem:
  755.     I am using AXsh with a multiserial board, but the serial handler
  756.     doesn't seem to work correctly.
  757. Reason:
  758.     The new Newaux-handler uses asynchronous writes to be able to serve
  759.     many connections at a time and some multiserial devices seem to
  760.     have problems with this. Because I don't have a multiserial board
  761.     myself, it is sort of hard to come up with a fix.
  762. Solution:
  763.     Use the older version of the handler (AXAUX-handler). However, you
  764.     will lose some of the features the new handler provides.
  765.  
  766.  
  767. *****************************************************************************
  768. 2.0 Configuring and customizing AXsh
  769.  
  770. This section is reserved for the actual configuring and customizing.
  771. Getting AXsh out of the packet is not much.  In this section we give AXsh
  772. unique features in your system.  We'll modify all the /etc/rc files up to
  773. date and also make the system stylish and usable to you and your users.
  774.  
  775. Remember that the identifier names are case-sensitive, should be always in
  776. lowercase and the colon is part of the name. Rest of the line is ignored.
  777. The setting for that specific entry follows on the next line. All paths
  778. should end in a slash or a colon, for example AXsh: and AXsh:home/ are legal
  779. values.
  780.  
  781. There are no actual comment-separators in the configuration files.
  782.  
  783.  
  784. *****************************************************************************
  785. 2.1 /etc/rc
  786.  
  787. /etc/rc is the main configuration file in AXsh.  In that file you define what
  788. commands and directories the users are allowed to use.  You have to decide
  789. what commands every access level can run and the directories they can access.
  790.  
  791. Here's the rc file's structure:
  792. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  793.  
  794.     %home:        /* users' home directories */
  795.     AXsh:home/
  796.     %news:        /* news-system directory */
  797.     AXsh:usr/spool/news/
  798.     %mail:        /* system mailbox directory */
  799.     AXsh:usr/spool/mail/
  800.     %timezone:    /* timezone string, default GMT (max 9 chr) */
  801.     EET
  802.     %upload:    /* system upload directory */
  803.     AXsh:usr/spool/upload/
  804.     %exampleuser:    /* this dir is copied to a new home dir */
  805.     AXsh:etc/ExampleUser/
  806.     %priority:    /* AXsh priority */
  807.     0
  808.     %thismachine:    /* Hostname */
  809.     pasbox.hro.fi
  810.     %hub:    /* The machine we are supposed to call */
  811.     tap.tre.fi
  812.     %password:    /* Password for us in the hub */
  813.     secretpass
  814.     %organization:
  815.     Digital Disaster Design - Wanna fry some chips ?
  816.     %tempdir:    /* Temporary place for e.g. mail/news packets */
  817.     T:
  818.     %answers:    /* Answer file */
  819.     AXsh:etc/adm/answers
  820.     %newregister:    /* "no" will disable the "new"-loginname register feature */
  821.     yes
  822.     %defuserlevel:    /* user level for new users - default is "visitor" */
  823.     visitor
  824.     %defquota:    /* quota for new users - default is 50k */
  825.     50
  826.     %reboot:    /* Reboot command for catched gurus.. */
  827.     c:coldreboot 
  828.     
  829.     ; Permitted dirs. Only symbolic paths are necassasy
  830.     %dirs:
  831.     $daemon:
  832.     $system:
  833.     $wizard:
  834.     $superuser:
  835.     $assistant:
  836.     $privileged:
  837.     $trusted:
  838.     $friend:
  839.     work:
  840.     $qualified:
  841.     $normal:
  842.     $guest:
  843.     $visitor:
  844.     C:
  845.     dh0:
  846.     dh0:System/
  847.     dh0:Tools/
  848.     Libs:
  849.     devs:
  850.     devs:keymaps/
  851.     devs:printers/
  852.     L:
  853.     fonts:
  854.     AXsh:
  855.     AXsh:etc/
  856.     AXsh:bin/
  857.     AXsh:info/
  858.     AXsh:man/
  859.     AXsh:usr/
  860.     AXsh:usr/spool/
  861.     AXsh:usr/spool/news/
  862.     AXsh:usr/spool/upload/
  863.     AXsh:usr/src/
  864.     AXsh:home/
  865.     #
  866.     
  867.     %commands:    /* p-no path, h-in home, q-check quota */
  868.     $wizard:    /* i-ignore args, f-not a filename r-raw mode */
  869.     $superuser:
  870.         run
  871.         path
  872.     $daemon:
  873.     $system:
  874.     $assistant:
  875.         utils:m
  876.         c:c13/runback
  877.     $privileged:
  878.     $trusted:
  879.     $friend:
  880.         lc:lc
  881.         lc:blink
  882.     f    AXsh:bin/mailserver
  883.     f    AXsh:bin/net
  884.     $qualified:
  885.     $normal:
  886.     $guest:
  887.     $visitor:
  888.     f    ALIAS
  889.     f    CD
  890.     f    ECHO
  891.         EXECUTE
  892.         IF
  893.     f    INTERNAL
  894.     p    PROTECT
  895.     f    QUOTA
  896.         QUIT
  897.     f    SET
  898.     f    SYSINFO
  899.     f    UNALIAS
  900.     f    UNSET
  901.     f    UPTIME
  902.     f    WAIT
  903.         WHICH
  904.     f    WHO
  905.     f    WHOAMI
  906.     f    WRITE
  907.     f    AXsh:bin/AMI
  908.     f    AXsh:bin/ascii
  909.     f    AXsh:bin/banner
  910.     f    AXsh:bin/bigtext
  911.     f    AXsh:bin/calendar
  912.         AXsh:bin/cat
  913.     r    AXsh:bin/CC
  914.     f    AXsh:bin/clear
  915.     rf    AXsh:bin/consoletalk
  916.         AXsh:bin/du
  917.     qp    AXsh:bin/editor
  918.         AXsh:bin/ffe
  919.     f    AXsh:bin/italics
  920.     f    AXsh:bin/last
  921.         AXsh:bin/ls
  922.     f    AXsh:bin/mach
  923.     qf    AXsh:bin/mail
  924.         AXsh:bin/man
  925.         AXsh:bin/more
  926.     f    AXsh:bin/netstat
  927.     h    AXsh:bin/news
  928.     f    AXsh:bin/passwd
  929.     f    AXsh:bin/register
  930.     qi    AXsh:bin/rn
  931.     qph    AXsh:bin/rx
  932.     qh    AXsh:bin/sigmaker
  933.         AXsh:bin/sx
  934.         AXsh:bin/sz
  935.     f    AXsh:bin/top
  936.         AXsh:bin/userstat
  937.         AXsh:bin/wc
  938.         AXsh:bin/XPR
  939.     i    C:Assign
  940.     f    C:Avail
  941.     fi    C:c13/Date
  942.     i    C:Dir
  943.         C:Info
  944.         C:List
  945.     f    C:Status
  946.     f    c:c13/ECS
  947.     f    c:c13/SI
  948.         c:c13/Cmp
  949.     f    c:c13/DevInfo
  950.     f    c:c13/Procs
  951.         C:Version
  952.         c:c13/WhereIs
  953.         Utils:DFrags
  954.     pqh    Utils:HamSharp
  955.     qph    Utils:LHarc
  956.     qph    Utils:LhA
  957.     qph    Utils:Lz
  958.     p    Utils:Uudecode
  959.     p    Utils:Uuencode
  960.     qp    C:Copy
  961.     qp    C:Delete
  962.     qp    C:Join
  963.     qp    C:Sort
  964.     qp    C:MakeDir
  965.     qp    C:Rename
  966.         C:Type
  967.     #
  968.  
  969.  
  970. Directory and command definitions:
  971. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  972. There are two main sections which are splitted in several parts by user level
  973. names:
  974.     %dirs:            %commands:
  975.     $daemon:        $daemon:
  976.     $system:        $system:
  977.     $wizard:        $wizard:
  978.     $superuser:        $superuser:
  979.     $assistant:        $assistant:
  980.     $privileged:        $privileged:
  981.     $trusted:        $trusted:
  982.     $friend:        $friend:
  983.     $qualified:        $qualified:
  984.     $normal:        $normal:
  985.     $guest:            $guest:
  986.     $visitor:        $visitor:
  987.     #            #
  988.  
  989. Each section begins with %<identifier>:  and usually ends with a #.  Access
  990. level specifiers are defined with $<specifier> qualifier.  There are four
  991. superuser access level specifiers:
  992.     daemon, system, wizard, superuser and
  993. eight normal user levels:
  994.     assistant, privileged, trusted, friend, qualified,normal, guest, visitor
  995. (You can get a list of these with passwd -ll.)
  996.  
  997. Allowed directories are defined in the %dirs:  section.  Each directory path
  998. name ends with a / or :.  All the paths defined after the access level
  999. specifier are valid for the corresponding access level.  This means that
  1000. directories specified with lower level users are also valid for higher access
  1001. level users, if you keep the access level specifiers in the same order as
  1002. here and don't use the limiting character (#).
  1003.  
  1004. You can also make separate definitions for each access level, if you end a
  1005. level definition with a #-sign.  You can mix these two defining methods too,
  1006. for example "normal" has some of its own directories and all of the
  1007. directories that are defined for "guest", which has only its own definitions.
  1008.  
  1009.     e.g.
  1010.         %dirs:
  1011.         $guest:
  1012.         axsh:usr/
  1013.         axsh:usr/spool/
  1014.         axsh:usr/spool/news/
  1015.         $visitor:
  1016.         axsh:
  1017.         axsh:man/
  1018.         axsh:info/
  1019.         #
  1020.         $assistant:
  1021.         axsh:
  1022.         axsh:etc/
  1023.         axsh:etc/adm/
  1024.         #
  1025.         $daemon:
  1026.         $wizard:
  1027.         $superuser:
  1028.         ...
  1029.  
  1030.     Here "visitor" can access only his own home directories, AXsh root
  1031.     directory, man and info directories. "guest" has all these and
  1032.     some additional directories to access.
  1033.     "assistant" can do only administrative jobs and has access to AXsh
  1034.     root directory and /etc and /etc/adm directories.
  1035.  
  1036.  
  1037. The %commands:  section lists all the executable commands for each access
  1038. level.  We suggest that you modify your own rc file based in the rc file
  1039. which is included in the distribution.  Commands for each access level are
  1040. specified in the same way as in the directory section.  You must not add any
  1041. intuition-based programs to the list.  For local use, just use path to add
  1042. directories to AXsh:s path.  Only superuser (root), when logged in on
  1043. console, is allowed to run any program.  Any superuser can use any directory
  1044. too. Starting from 1.26, AXsh can also run resident and shell-internal
  1045. commands under KS2.0 .
  1046.  
  1047. Before the command name in the /etc/rc file there are possibly some flags. If
  1048. you put a "p" before the command, it's arguments can point only to the home
  1049. directory, but the command can be run anywhere.  Like "p editor".  You can
  1050. start the editor anywhere, but only edit your own files.  "h" means that the
  1051. command can be run only in the home directory. Usually this means that the
  1052. program stores its data files in the current (default) directory and allowing
  1053. the use of the command elsewhere would cause configuration and other files
  1054. pop up randomly anywhere the user can go. "i" will make the arguments
  1055. disappear.  These three flags has no effect on superusers
  1056.  
  1057. "q" suggests that the used disk space is checked after the command.  "r" will
  1058. cause the command to be run in raw-mode, instead of the usual console-mode.
  1059. Must be used for those programs that expects to be run on RAW:  .  "f" will
  1060. not try to do any interpretations on the arguments, otherwise ".." , "~" and
  1061. other Unix-like paths are converted to AmigaDOS format. So, what in fact
  1062. "f" means is: "Do not do any checking or tranformation of the arguments".
  1063. Use it with extreme care or you will blow out the whole security out of the
  1064. door.
  1065.  
  1066.  
  1067. Global definitions:
  1068. ~~~~~~~~~~~~~~~~~~~
  1069. After (or before) dirs and commands there are a few other identifiers, which
  1070. can be changed quite freely depending on the configuration of the AXsh
  1071. system.
  1072.  
  1073. First there's the default home directory for users.  We suggest that you use
  1074. AXsh:home/, but it may be some other directory as well.  This controls where
  1075. the registered users' home directories are created.  This does not have any
  1076. effect to home directories that already exist. All path definitions MUST end
  1077. with a slash or colon ("/" or ":").
  1078.  
  1079. %news:  and %mail:  specifies where the news and mail systems are located.
  1080.  
  1081. %timezone: sets the string that is appended to date strings when sending
  1082. news or mail. It may be 9 characters long, the default is GMT if this entry
  1083. does not exist.
  1084.  
  1085. %upload:  defines where the network uploads go.  It's possible to send binary
  1086. files through net with news packets and they end up where this definition
  1087. points. Remember that this may or may not be the same directory that is used
  1088. in XPR. XPR upload directory is specified in /etc/xprotos.tab.
  1089.  
  1090. %exampleuser:  defines a path that points to the directory that will be
  1091. copied to new user's home when a new account is created.  You can store
  1092. read.me files etc.  there.  We recommend that you'd use AXsh:etc/exampleuser/
  1093. here.  Register uses c:copy to copy the files, so that should exist also.
  1094.  
  1095. %priority:  is the priority that AXsh takes on startup. You might use 1,
  1096. because you're using the system on the console paying nothing but the
  1097. electricity bill.  The poor guy on the phone line is paying the phone bill,
  1098. so he should be the one getting CPU time whenever he wants.
  1099.  
  1100. %thismachine:  tells the network name of this site.  No special format in
  1101. used, we've used this:  machine_name.town.state.  For example:
  1102. my_bbs.london.gb.  To make the network work, this name should be less than or
  1103. equal to 16 characters.
  1104.  
  1105. %organization:  defines an Internet organization line.  Could contain state
  1106. and town and name of your system.
  1107.  
  1108. %hub:  defines the machine that is your hub machine on the net.  Hub refers
  1109. to the main machine that you poll.  This and the %password:-entry are
  1110. normally associated with the rc.server event definitions.
  1111.  
  1112. %password:  defines the password that is sent when a net connection is
  1113. established and the hub machine has taken your machines name.  This is
  1114. something you and your hub machines administrator should decide.  The
  1115. password may not be too easy to guess, because other systems may have system
  1116. privileges on the remote hubs.  You do not have to give another host system
  1117. privileges if you give permission to use AXsh:bin/net to normal users.
  1118.  
  1119. %tempdir:  defines the temporary directory for network files.  Usually T:  or
  1120. RAM:. Currently this is only used to store network packets while receiving and
  1121. sending them. Rn also uses this while creating new articles.
  1122.  
  1123. When the system crashes and AXsh notices it, it tries to reboot the system
  1124. to avoid gurus and system down-times.  It's done by executing an external
  1125. program which is defined in %reboot:.  We recommend that you use SetCPU
  1126. romboot.
  1127.  
  1128. %answers:  defines the file where AXsh:bin/register stores users'answers.
  1129. Usually AXsh:etc/adm/answers.
  1130.  
  1131. %newregister:  enables or disables the login name "new".  "no" will disable
  1132. the feature.
  1133.  
  1134. %defuserlevel: defines the user level for newly-registered users. Default
  1135. level is "visitor". You can also define the quota for new users with
  1136. %defquota:. Default quota is 50k.
  1137.  
  1138. %reboot: defines the command that is run when AXsh catches a GURU.
  1139.  
  1140.  
  1141. *****************************************************************************
  1142. 2.2 /etc/rc.server
  1143.  
  1144. AX-server has its own configuration file called /etc/rc.server.  It contains
  1145. modem initialization commands, network stuff and command lines that are used
  1146. to initiate new AXsh sessions and network events.  Default AX-server
  1147. configuration file looks like this:
  1148.  
  1149.     %bpslock:
  1150.     19200
  1151.     %bps:
  1152.     19200
  1153.     
  1154.     %serverpri:
  1155.     4
  1156.     
  1157.     %starthour:
  1158.     0
  1159.     %stophour:
  1160.     25
  1161.     
  1162.     %newshell:
  1163.     newshell newaux:%d/%u/shared/checkcd/useodu from AXsh:etc/remote-startup
  1164.     
  1165.     %newcon:
  1166.     newshell raw:0/9/428/210/AXsh/CLOSE from AXsh:etc/local-startup
  1167.     
  1168.     %modem-reset:
  1169.     ATZ
  1170.     %modem-aa:
  1171.     ATS25=255W2\N3&C1&D0M0E0S0=1
  1172.     %modem-noaa:
  1173.     ATE1S0=0
  1174.     
  1175.     %eventhour:
  1176.     25
  1177.     %eventmins:
  1178.     0
  1179.     %eventnumber:
  1180.     ATX4E0DT161320
  1181.     %eventcommand:
  1182.     AXsh:bin/nntpnews <axaux: >axaux:
  1183.     
  1184.     %ringflash:
  1185.     0
  1186.     %device:
  1187.     serial.device
  1188.     %unitnumber:
  1189.     0
  1190.     %handshake:
  1191.     cts/rts
  1192.  
  1193. In the first line %bpslock:  defines possible baud rate lock.  If you have a
  1194. high speed modem that can always use the same speed (e.g.  19200 bps), you
  1195. can define %bpslock:.  If AX-server finds a %bpslock:  specifier from the
  1196. configuration file, it uses ALWAYS that bps rate regardless of actual
  1197. connection bps rate.  It will still show the connect message received from
  1198. the modem in the title bar. If your modem can't use locked speed, REMOVE
  1199. the entry totally, leaving the next line blank won't be enough!
  1200.  
  1201. For now you should only use speeds that are available in serial preferences !
  1202. If you are using multiple devices or other than the builtin serial port, you
  1203. MUST use a fixed DTE-speed and also tell newaux: what the used speed is
  1204. (for example NEWAUX:serial.device/6/shared/checkcd/speed38400).
  1205.  
  1206. If %bpslock:  is not used, %bps:  defines the highest possible speed of you
  1207. modem.  All the controlling commands ("ATZ" etc.) are sent at this baud rate.
  1208. Baud rate between modem and Amiga is changed to match the rate at phone line
  1209. after a successful connection.  The baud rate in preferences is set
  1210. accordingly so that NEWAUX will operate at the right speed.  This is why you
  1211. can only use speeds that are possible in serial preferences.
  1212.  
  1213. %serverpri:  defines AX-server's priority.  It should be less than five, but
  1214. more than one.  Four should be more than enough.  AX-server should never stuck.
  1215. It may take a while if the modem is giving it a hard time by using the
  1216. handshake (7-WIRE) to hold the transmission.  In that case you might want to
  1217. hard-reset the modem.  Commodore recommends that all the programs' priorities
  1218. should be less than 5.
  1219.  
  1220. If you are running a system that takes calls in only at night or only at day
  1221. time, you can describe starting and stopping hours for AX-server.
  1222. %starthour:  defines the hour when AX-server starts to answer the incoming
  1223. calls and %stophour:  when it stops.  For example if your system opens at
  1224. 20:00 (08:00 PM) and closes down at 06:00 (06:00 AM) you type here:
  1225.  
  1226.     %starthour:
  1227.     20
  1228.     %stophour:
  1229.     06
  1230.  
  1231. %newshell:  opens a new AXsh by executing a script which usually is stored in
  1232. AXsh:etc/ directory and named remote-startup.  This opens an AXsh session for
  1233. external users.
  1234.  
  1235. Local console session is opened in the same way.  %newcon:  opens a window to
  1236. the console and then executes AXsh starting script.  You can change the
  1237. window parameters, but don't touch the AXsh:etc/local-startup file.  It's
  1238. just fine. The window should be 80 columns wide, because currently most
  1239. programs expects that. If necassary, add some overscan to make the window
  1240. larger (I have 724x564 in PAL-interlace).
  1241.  
  1242. %modem-reset:  defines the string that resets the modem.  Usually ATZ. It is
  1243. wise to store modem settings with echo disabled, as that saves you from some
  1244. unexpected difficulties.  You should also disable the DTR checking, because
  1245. there is delay between AX-server releasing serial and AXAUX:  opening it
  1246. again. You can also set the DTR delay to a high enough value.
  1247.  
  1248. %modem-aa:  defines the autoanswer string.  This string is sent to the modem
  1249. when the time is between starthour and stophour.  You may have to modify this
  1250. depending on your modem's command language.
  1251.  
  1252. AX-server sends %modem-noaa:  string to modem when stophour occurs.  It can
  1253. reset modem or just put autoanswer off.  Currently AX-server just resets the
  1254. modem if it needs to turn the autoanswer off, so this entry is not really
  1255. used.
  1256.  
  1257. %eventhour:  and %eventmins:  tells AX-server when to make a network call.
  1258. You have to discuss about this with your remote hub's administrator.
  1259.  
  1260. %eventnumber:  defines the string that AX-server sends to modem when an event
  1261. hour occurs.  Usually it contains ATDT<phonenumber>.
  1262.  
  1263. %eventcommand:  defines the script or program that is to be executed after a
  1264. connection is established between your machine and remote hub.  If the number
  1265. is busy or the connect fails, AX-server will try again in five or ten minutes
  1266. until it succeeds or the the event hour does not match anymore.  If you are
  1267. calling an AXsh hub, the event command would be something like:
  1268.  
  1269.     AXsh:bin/net <axaux: >axaux:
  1270.  
  1271. AX-server can flash the screen when phone rings.  %ringflash:  defines the
  1272. situations where it flashes the screen:
  1273.  
  1274.     0 - do not flash
  1275.     1 - when sleeping (not taking calls in)
  1276.     2 - when answering calls
  1277.     3 - always
  1278.  
  1279. There are also two additional definitions.  You can use %device:  and
  1280. %unitnum:  to use some other device than the built-in serial.  If you set
  1281. these, you have to do modifications to the %newshell too.  e.g.
  1282.  
  1283.     newshell AXAUX:modem0.device/0/ from AXsh:etc/remote-startup
  1284.  
  1285. However, the ring checking is still done directly from the CIA.  If you use a
  1286. printer much, you might want to turn the flash off, because the modem Ring
  1287. Indicator uses the same CIA input line with the printer Online Select line
  1288. and AX-server would think that the phone is ringing.
  1289.  
  1290. If you are not using the builtin serial, you should have 0 in the %ringflash:
  1291. entry !
  1292.  
  1293. %handshake:  configuration entry is for those people who don't have the
  1294. possibility to use cts/rts (7wire) handshaking with their modem.  In that
  1295. case set it to "none".  AXAUX: uses handshaking by default, so you also
  1296. need to change the %newshell:  entry to include /noflow.
  1297.  
  1298.     newshell NEWAUX:serial.device/0/noflow from AXsh:etc/remote-startup
  1299.  
  1300. You can also use several different configuration files, because one can be
  1301. picked using a command line parameter when invoking AX-server.  The name of
  1302. the configuration file can be seen in the window title bar during the
  1303. setup. The synopsis is:
  1304.  
  1305.     AX-server [-f<config-file>] [-x<xpos>] [-y<ypos>] [-h<title-height>]
  1306.  
  1307. As you can see, it is also possible to define where the window will be opened
  1308. and if the system title font is larger than 8 points, the title bar height
  1309. can also be set.  You still should remember that if the window will not fit
  1310. into the screen, the program does not try to reopen it and exits.
  1311.  
  1312.  
  1313. You can also run a multiline system, newaux-handler should be able to handle
  1314. several connection at one. However, if it does not work with your multiserial
  1315. card, you can mount one handler per each line, named differently of course.
  1316. You also need as many server configurations. You can also use the old
  1317. AXAUX-handler, but you need seperate mounted handler for each line, because
  1318. AXAUX-handler is not designed to handle several ports simultaneously.
  1319.  
  1320. Since AXsh 1.31 you can also use 'variables' in the %newshell: entry.
  1321. %d    Devicename
  1322. %u    Unitnumber
  1323. %s    Connect speed
  1324.  
  1325.  
  1326. *****************************************************************************
  1327. 2.3 /etc/rc.ffe
  1328.  
  1329. FFE is a `file area' for users.  If you have files to download in your
  1330. system, it's reasonable to set up ffe.  For that you need to modify rc.ffe.
  1331. FFE (File Front End) is stored in AXsh:bin/ and it uses a VT100 interface.
  1332.  
  1333. AXsh:etc/rc.ffe looks like this:
  1334. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1335.     %filepath:
  1336.     Archive:
  1337.     
  1338.     %descpath:
  1339.     axsh:etc/ffe/
  1340.     
  1341.     %xprpath:
  1342.     axsh:bin/xpr
  1343.     
  1344.     %statuswindowrows:
  1345.     10
  1346.     
  1347.     %morecmd:
  1348.     AXsh:bin/more
  1349.     
  1350.     %suffix:
  1351.     .zoo utils:zoo l
  1352.     %suffix:
  1353.     .lha utils:lha v
  1354.     %suffix:
  1355.     .lzh utils:lha v
  1356.     %suffix:
  1357.     .dms utils:dms view
  1358.  
  1359.  
  1360. %filepath:  in the first line defines where your public files are stored on
  1361. the disk.  It may also be a complete path name as well as an assign.  If it
  1362. is a path, it must end with a /. Now you can also define several (16)
  1363. %filepath: entries. In this case FFE will show 'links' to all of them in
  1364. the top level directory and you can change between them.
  1365.  
  1366. FFE will give access to all subdirectories that are under the defined filepath
  1367. directory. This is not always wanted, for example if you have some directories
  1368. that you want to be private. FFE won't show a directory (and you can't enter
  1369. it when in FFE) if its hidden-flag is set or the execute-flag is unset. So,
  1370. you can hide whole branches of the directory tree from the normal users.
  1371. Superusers still have access to all file directories.
  1372.  
  1373. %descpath:  defines where the file description texts are stored.  This
  1374. directory should exist to make the descriptions work.  Each file may have a
  1375. short description file.  (Read FFE's manual page for more information).
  1376. Don't change this.  If there is no description file, FFE will show the
  1377. filenote, if that exists. Filenotes are generally easier to use and consume
  1378. NO disk space.
  1379.  
  1380. %xprpath:  defines where the xpr program is stored.  Usually it's with AXsh
  1381. and is stored in AXsh:bin/.
  1382.  
  1383. With %suffix: entries you can define different commands for different types
  1384. of files. This can be used to allow a user to take a look into the contents
  1385. of a file packet. Just define a command and an appropriate option for a
  1386. suffix. The command is started with 'c' and if no suffix match and the file
  1387. is not binary, it is displayed with a pager.
  1388.  
  1389. The default rc.ffe will have suffixes defined for zoo, lha, lzh and dms
  1390. packets, but you may have to change the command paths.
  1391.  
  1392. It is also possible to change the size of the status window with the
  1393. setting %statuswindowrows:. The value in this setting includes the two
  1394. status bars. The smallest accepted value is 7, the largest you can get is
  1395. the height of the window minus five.
  1396.  
  1397. You can also select a different pager command with the %morecmd: setting.
  1398. The default value is AXsh:bin/more.
  1399.  
  1400. You can also have separate configuration for each user level. First the
  1401. file AXsh:etc/rc.ffe.<accesslevel> is checked. If that file does not exist,
  1402. then each accesslevel below the user's level is tried and finally plain
  1403. rc.ffe if none of the specific configuration files can be opened. This
  1404. feature can be used to give newly-registered users only a restricted
  1405. access to files and that way encourage uploading, message writing and
  1406. other activities.
  1407.  
  1408.     An example:
  1409.         User accesslevel:    normal
  1410.         1st try:            AXsh:etc/rc.ffe.normal
  1411.         2nd try:            AXsh:etc/rc.ffe.guest
  1412.         3rd try:            AXsh:etc/rc.ffe.visitor
  1413.         Finally:            AXsh:etc/rc.ffe
  1414.  
  1415.  
  1416. *****************************************************************************
  1417. 2.4 /etc/rc.news
  1418.  
  1419. The news subsystem can be configured by changing various configuration
  1420. entries in the /etc/rc.news configuration file.  If you use UUCP, you have to
  1421. change the default values defined there.  This part of the document will give
  1422. suggestions only and better settings may be possible.  Even if you use AXsh
  1423. mail and news you should read what all possibilites there is.
  1424.  
  1425. The entry %news:  in the main configuration file (/etc/rc) defines the
  1426. location of the newsgroups.
  1427.  
  1428. Since Rn 1.60 it is also possible to have individual configurations for each
  1429. user level. First the file /etc/rc.news.<accesslevel> is checked. If the
  1430. file does not exist (or can not be opened), the configuration file for the
  1431. next lowest user level is tried. If none of these special configurations
  1432. are found, the plain old /etc/rc is used. This feature can be used for
  1433. example to make some groups only accessible to high enough user levels.
  1434.  
  1435.     An example:
  1436.         User accesslevel:    normal
  1437.         1st try:            AXsh:etc/rc.news.normal
  1438.         2nd try:            AXsh:etc/rc.news.guest
  1439.         3rd try:            AXsh:etc/rc.news.visitor
  1440.         Finally:            AXsh:etc/rc.news
  1441.  
  1442.  
  1443. /etc/rc.news:
  1444. ~~~~~~~~~~~~~
  1445.     %grabfile:
  1446.     Grab.rn
  1447.     The name of the grab file created in home directory.  Whenever
  1448.     a Grab option is selected in rn, this filename is used.
  1449.  
  1450.     %batchfile:
  1451.     AXsh:usr/spool/news/%s.batch
  1452.     This is the file where message filenames that are sent to
  1453.     other system are saved. %s in this string is the hostname.
  1454.     With UUCP you would use UUSPOOL:batch/%s. See also %sysfile:.
  1455.  
  1456.     %sysfile:
  1457.     AXsh:usr/spool/news/Sys
  1458.     Hosts to whom forward news. This file is very much like the
  1459.     Sys file in UUCP. Read explanations about the entries from
  1460.     the file itself. In UUCP you would use UULIB:sys.
  1461.  
  1462.     %newsgroupfile:
  1463.     AXsh:usr/spool/news/NewsGroups
  1464.     File  where  the newsgroups are listed.  Only groups present
  1465.     in  this  file are consired active by rn.  The numbers after
  1466.     the newsgroup names in the file are the expire times,  older
  1467.     messages in the corresponding group are deleted when "rn tidy"
  1468.     is executed.
  1469.  
  1470.     %quotestring:
  1471.     > %s
  1472.     Used when doing follow-ups. %s is the quoted string itself.
  1473.     Newline is appended automatically.
  1474.  
  1475.     %postnews:
  1476.     internal
  1477.     UUCP:c/postnews <%f -f %u -r "%r" -R UULIB:Newsheader
  1478.     This  defines the command used when posting news.  With AXsh
  1479.     news  you  should  use  internal and with UUCP use something
  1480.     like UUCP:c/postnews <%f -f %u -r "%r" -R UULIB:Newsheader.
  1481.     As you can see, you can use some special variables.
  1482.         %f = name of the article file
  1483.         %u = user login name
  1484.         %r = user full name
  1485.  
  1486.     If you use Active file, you HAVE TO use external postnews.
  1487.     Also remember that Rn does not generate Path:,From:,Date: nor
  1488.     Organization: lines with external postnews.
  1489.  
  1490.     %distribution:
  1491.     world
  1492.     Distribution  defines  the Distribution:-field for messages.
  1493.     The default value is "world".
  1494.  
  1495.     %fupref:
  1496.     In %s %s tells:
  1497.     This  defines the followup header line.  The first %s is the
  1498.     article-ID, the other one is the sender.
  1499.  
  1500.     %sendmail: (Obsoletes %mailer:)
  1501.     axsh:bin/mailserver %f
  1502.     UUCP:C/Sendmail <%f -f %u -R "%r" -t "%t"
  1503.      %f = name of the letter file
  1504.      %u = user login name
  1505.      %r = user full name
  1506.      %t = receiver (login name only)
  1507.     Rn  now edits mail replies itself instead of executing the mailer
  1508.     command. So, %mailer: configuration entry was made obsolete by
  1509.     %sendmail: entry, which works similarly to that in rc.mail.
  1510.  
  1511.     However, CC: (%c) is not available and "AXsh:bin/mailserver %f"
  1512.     is used instead of "internal". This is also the default setting.
  1513.     Rn doesn't provide a Message-ID: for mail messages, but at least
  1514.     UUCP1.16D version of the sendmail adds it automatically.
  1515.  
  1516.     %netlogfile:
  1517.     AXsh:etc/adm/netlog
  1518.     Name  of  the  netlogfile.   Net, rn and other programs will
  1519.     write short report lines here about net activity.
  1520.  
  1521.     %activefile:
  1522.     none
  1523.     Name of the active file to be used.  "none" means that it is
  1524.     not used.
  1525.  
  1526.     Currently the active file is only read, and you have to use
  1527.     external postnews command if you use it. Some of the commands
  1528.     in Rn are also disabled if you use an active file (CNews),
  1529.     because they must be handled by a seperate program.
  1530.  
  1531.     %nntpgroupfile:
  1532.     AXsh:usr/spool/news/NNTPGroups
  1533.     The file where the NNTP-newsgroups are listed. Only used in the
  1534.     NNTPnews-program, which imports news from a NNTP server.
  1535.     (The program is available on separate request.)
  1536.  
  1537.     %nntplogin:
  1538.     \n            kaima-ts>    kummi-ts>
  1539.     "term flow hard\n"    kaima-ts>    kummi-ts>
  1540.     "term telnet-t\n"    kaima-ts>    kummi-ts>
  1541.     "telnet news.cc.tut.fi 119\n"    "200 lehtori" 200
  1542.     #
  1543.     Set of Send-Expect1-Expect2 strings used when NNTPnews logs in to
  1544.     the NNTP server.
  1545.  
  1546.     %nntpdebug:
  1547.     0
  1548.     Debug level for NNTPnews. 0 means no logging, 1 logs only the
  1549.     handshake process and group responses, 2 logs all traffic (slow!).
  1550.  
  1551.  
  1552. NEWSGROUPS
  1553.     All active newsgroups are listed in the Newsgroups file and they
  1554.     should have directories, and .next files.  AXsh uses tree-structured
  1555.     directories.  For example comp.sys.amiga.misc has a directory
  1556.     AXsh:usr/spool/news/comp/sys/amiga/misc.
  1557.  
  1558.     AXsh news also uses .lowest files where it stores the number of the
  1559.     lowest article in that newsgroup.
  1560.  
  1561.     If you use CNews' active-file, newsgroups-file is not used and
  1562.     .next and .lowest files are ignored. Rn will believe what the
  1563.     active file says. You also shouldn't use rn tidy or rn active
  1564.     when using CNews.
  1565.  
  1566.  
  1567. SYS-file
  1568.     In this file we define where to send news articles.  Name of the file
  1569.     is defined in the news configuration file (/etc/rc.news).  Each line
  1570.     (that is not a comment or an empty line) defines a host and a
  1571.     newsgroup patterns.  Only articles in groups that are defined in the
  1572.     sys file are forwarded.  Negative patterns can also be used, so that
  1573.     news in those groups are not sent.
  1574.  
  1575.     Patterns that are currently supported include:
  1576.         *,*str,str*,*str*,str
  1577.     and negated versions of these.
  1578.  
  1579.     example:
  1580.         remote:*,-local*
  1581.  
  1582.     All groups except groups starting with a string "local" are sent to
  1583.     the remote host. The host name must start from the first column.
  1584.  
  1585.     \ (line continuation) is now supported (since Rn 1.61).
  1586.     Lines may be upto 256 characters long.
  1587.  
  1588.     Things that are different from UUCP:
  1589.         ? and machine aliases not supported yet
  1590.  
  1591.  
  1592. NEWSGROUPS-file
  1593.     This  file  contains all active newsgroups, expire times for
  1594.     the messages in each groups and additional flags.
  1595.         e.g.
  1596.         alt.hackers            60 r
  1597.         axnet.axsh.dev            60 
  1598.         junk                10 
  1599.  
  1600.     Here  the  group  alt.hackers  is  a  read-only group, where
  1601.     posting is not allowed. All articles older than 60 days will
  1602.     be removed when a command "rn tidy" is executed.
  1603.  
  1604.     axnet.axsh.dev  has no restrictions, but the exprire time is
  1605.     the default 60 days.
  1606.  
  1607.     junk could be defined to be a read-only group also, but here
  1608.     the expire time is set to 10 days.
  1609.  
  1610.     Newsgroups file is not used when Active file is used.
  1611.  
  1612.  
  1613. ACTIVE-file
  1614.     The  active  file  rn  generates (rn active <filename>) only
  1615.     contains  the  newsgroup  names  and  the number of the last
  1616.     and first article in each group. Do not generate active file
  1617.     is you don't know exactly what you are doing.  If  your news
  1618.     system  already  creates and handles an active file,  DO NOT
  1619.     use  Rn  to  generate  an  active file, but use %activefile:
  1620.     configuration entry instead.
  1621.         e.g.
  1622.         alt.hackers 0001027 0000765 y
  1623.         alt.sys.amiga.uucp 0001384 0000986 y
  1624.         comp.arch 0001561 0001548 y
  1625.         comp.sys.cbm 0002951 0002551 y
  1626.         rec.arts.sf.starwars 0002546 0002546 y
  1627.  
  1628.  
  1629. *****************************************************************************
  1630. 2.5 /etc/rc.mail
  1631.  
  1632. The mail subsystem can be configured by changing various configuration
  1633. entries in the /etc/rc.mail configuration file.  If you use UUCP, you have to
  1634. change the default values defined there.  This document will give suggestions
  1635. only and better settings may be possible.  Even if you use AXsh mail and news
  1636. you should read what all possibilites there is.
  1637.  
  1638. The entry %mail:  in the main configuration file (/etc/rc) defines the
  1639. location of the mailbox files.
  1640.  
  1641.  
  1642. /etc/rc.mail:
  1643. ~~~~~~~~~~~~~
  1644.     %sendmail:
  1645.     internal
  1646.     UUCP:c/sendmail <%f -f %u -R "%r" -t %t -c "%c"
  1647.     This  defines  what  command  is  used to deliver an already
  1648.     compiled  mail  message.   For  AXsh  mail  this  should  be
  1649.     "internal", for UUCP you would use
  1650.     UUCP:c/sendmail <%f -f %u -R "%r" -t "%t" -c "%c".
  1651.     As you can see, a number of special variables can be used.
  1652.         %f = name of the letter file
  1653.         %u = user login name
  1654.         %r = user full name
  1655.         %t = receiver (login name only)
  1656.         %c = carbon copies
  1657.  
  1658.     For external sendmail, only one message is generated and the
  1659.     program should also handle the receivers in the Cc:-line.
  1660.  
  1661.     %routetable:
  1662.     AXsh:usr/spool/mail/Routetable
  1663.     This  entry  gives  the  filename  for the AXsh mail routing
  1664.     table.   Each  line  in  the file lists two host names.  The
  1665.     second  host  name  defines  the host where the mail will be
  1666.     delivered  if  the  receiver's host is the same as the first
  1667.     host name.
  1668.  
  1669.         e.g.
  1670.         x.ola.fi    tap.tre.fi
  1671.  
  1672.     All messages to x.ola.fi are sent to tap.tre.fi to be further
  1673.     forwarded. This file is NOT used if UUCP (external) sendmail
  1674.     is used.
  1675.  
  1676.     %aliasfile:
  1677.     AXsh:usr/spool/mail/Mailaliases
  1678.     The file defined here is used for mail aliases.  Aliases are
  1679.     expanded  before  .forward files and they refer only to mail
  1680.     addresses,  no  piping  to  commands  are  yet  implemented.
  1681.     Further  alias and .forward replacement can be disabled with
  1682.     a "\"-sign.
  1683.  
  1684.         e.g.
  1685.         pasi.ojala: \root
  1686.         root: albert
  1687.         axsh: root root@tap.tre.fi root@x.ola.fi root@oxygene.tku.fi
  1688.  
  1689.     This file is NOT used if UUCP sendmail is used.
  1690.     Remember that the lines (and addresses) are case-sensitive !!
  1691.  
  1692.  
  1693. $HOME/.forward
  1694.     Users can create a file named .forward in their home directory
  1695.     to   forward  received  messages  to  other  systems  or  to
  1696.     different user name in the same system.  .forward consist of
  1697.     lines,  each  carrying  one mail address.  Further alias and
  1698.     .forward expansions can disabled with a "\"-sign.
  1699.  
  1700.         e.g.
  1701.         \root
  1702.         albert@tap.tre.fi
  1703.  
  1704.     Does UUCP use .forward-files ?
  1705.     Remember that the lines (and addresses) are case-sensitive !!
  1706.  
  1707.  
  1708. *****************************************************************************
  1709. 2.6 /etc/issue & /etc/motd
  1710.  
  1711. /etc/issue is displayed before the login prompt and could have e.g.  the
  1712. system name and OS version.  This file is optional:  if it does not exist, no
  1713. error message is printed. Don't use long issue files.
  1714.  
  1715. /etc/motd is the `message-of-the-day' file, which is displayed to every user
  1716. after a successful login.  It's recommended that the administrator modifies
  1717. this file and adds at least some explanations about how to get help (man -k
  1718. -).
  1719.  
  1720.  
  1721. *****************************************************************************
  1722. 2.7 /etc/forbiddenvars
  1723.  
  1724. This file defines which variables can't be set by user. You need this with
  1725. 'foreign' newsreaders and other UUCP stuff, because a user shouldn't be
  1726. allowed to change e.g. the POSTNEWS variable.
  1727.  
  1728. You can also define how many times a given variable can be set (usually 1),
  1729. so that you can set them in /etc/globallogin, which is executed before
  1730. .login. AXsh 1.3 exports all the variables to 2.0 shell local variables,
  1731. if it is possible (if you have a ks2.0 system). Since AXsh version 1.3, all
  1732. variable names are case-insensitive, but the case is preserved.
  1733.  
  1734. /etc/ForbiddenVars:
  1735. ~~~~~~~~~~~~~~~~~~
  1736.     user
  1737.     USERNAME
  1738.     HOME
  1739.     organization
  1740.     version
  1741.     quota
  1742.     lastlogin
  1743.     MAILER    1
  1744.  
  1745.     <variable-name> <soft-spaces> [<set's allowed>]
  1746.  
  1747. All these variables can only be set by the system, except MAILER is allowed
  1748. to be set once. Of course you would want to use /etc/GlobalLogin to set the
  1749. variable before the user can run his own scripts.
  1750.  
  1751.  
  1752. *****************************************************************************
  1753. 2.8 /etc/globallogin
  1754.  
  1755. GlobalLogin is executed EVERY time a user logs in, before executing ~/.login,
  1756. so that you can be certain that needed variables are set. Globallogin is
  1757. executed with user privileges, but if you use /etc/ForbiddenVars correctly,
  1758. you can set the variables you like.
  1759.  
  1760. Globallogin is especially well suited for running programs you really need
  1761. executed in each login, because globallogin execution can not be aborted
  1762. by user.
  1763.  
  1764.  
  1765. *****************************************************************************
  1766. 2.9 /etc/crontab
  1767.  
  1768. Cron is a program that executes particular programs at particular time.  AXsh
  1769. does not contain cron, but there are at least two PD crons, which are tested
  1770. and found useful with AXsh :  CyberCron and DCron.  Both can be found from
  1771. Fish Disks.
  1772.  
  1773. The recommended crontab file should contain at least these lines:
  1774.  
  1775.  
  1776. # axsh:etc/crontab
  1777. #
  1778. #min    hr    day    mon    dow    command
  1779. # adjust time every 24 hours.. keep us in line
  1780. 0     0     *     *     *    c:setclock load
  1781. #    run rn tidy
  1782. 0    7    *    *    *    axsh:bin/rn tidy -m300
  1783. #    clean /etc/adm/ of all the crap AXsh places there during a user call
  1784. 0    18    *    *    *    c:type axsh:etc/adm/log#? >>axsh:home/root/temp/luserlog
  1785. 1    18    *    *    *    c:delete >nil: axsh:etc/adm/log#?
  1786. 2    18    *    *    *    axsh:bin/shorten 1000 axsh:home/root/temp/luserlog
  1787. 3    18    *    *    *    axsh:bin/shorten 5000 axsh:etc/adm/netlog
  1788. 59    18    *    *    *    c:setclock load
  1789.  
  1790.  
  1791. The first event occurs at 00:00.  Cron fixes Amiga's clock up to date again.
  1792. At 07:00 it runs rn tidy, which cleans old news files off the disk.  Then at
  1793. 18:00 (06:00 PM) it's time to clean old log files and restore them in root's
  1794. home directory for further handling.  Shorten makes log files shorter, so
  1795. that they won't eat too much disk space.
  1796.  
  1797.  
  1798. *****************************************************************************
  1799. 2.10 /etc/xprotos.tab
  1800.  
  1801. Both FFE and XPR need /etc/xprotos.tab to operate.  There's a default
  1802. xprotos.tab, but it can be modified, if new powerful protocols come out in
  1803. xpr versions.  You have to be careful not to allow overwriting in uploads,
  1804. because this is a serious security risk.  For example xmodem is a protocol
  1805. that should not be allowed.  It is included in the default xprotos.tab-file,
  1806. because it uses the xprymodem.library and this library has an upload-path
  1807. feature.
  1808.  
  1809. The default xprotos.tab looks like this:
  1810. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1811. "zmodem"
  1812. Library: xprzmodem.library
  1813. Descrip: Binary/No overwrite/Full duplex/No delete/No paths
  1814. Options: TN ON B16 F0 E10 AN DN KY SN RN PAXsh:usr/spool/upload
  1815. Default: TC,ON,B16,F0,E10,AY,DN,KY,SN,RN,P
  1816.  
  1817. "zmodem-home"
  1818. Library: xprzmodem.library
  1819. Descrip: Binary/No overwrite/Full duplex/No delete/HomeDir
  1820. Options: TN ON B16 F0 E10 AN DN KY SN RN P
  1821.  
  1822. "zmodem-window8k"
  1823. Library: xprzmodem.library
  1824. Descrip: Binary/No overwrite/Full duplex/8k window/No delete
  1825. Options: TN ON B8 F8192 E10 AN DN KY SN RN PAXsh:usr/spool/upload
  1826.  
  1827. "xmodem"
  1828. Library: xprymodem.library
  1829. Descrip: Chop/Checksum
  1830. Options: YS,Z1,C0,B0,OAXsh:usr/spool/upload
  1831.  
  1832. "xmodem-crc"
  1833. Library: xprymodem.library
  1834. Descrip: Chop/CRC16
  1835. Options: YS,Z1,C1,B0,OAXsh:usr/spool/upload
  1836.  
  1837. "ymodem"
  1838. Library: xprymodem.library
  1839. Descrip: Batch/Chop/CRC16/1K blocks
  1840. Options: YB,Z1,C1,B1,OAXsh:usr/spool/upload
  1841.  
  1842. "ymodem-g"
  1843. Library: xprymodem.library
  1844. Descrip: Batch/Chop/CRC16/1K blocks/No Acks or retries on error
  1845. Options: YG,Z1,C1,B1,OAXsh:usr/spool/upload
  1846.  
  1847. "ymodem-a"
  1848. Library: xprymodem.library
  1849. Descrip: Batch/Chop/2K blocks/No CRC checking or retries
  1850. Options: YA,Z1,C1,B1,OAXsh:usr/spool/upload
  1851.  
  1852. Each protocol definition starts with a general protocol name.  This has
  1853. nothing to do with the library name or options it uses, it is just the name
  1854. the user uses to refer to it.  It can be found between two quotation-marks.
  1855. Next line describes the library this particular protocol opens.  Descrip:
  1856. is a description line, which will be displayed when user starts the transfer.
  1857. Options:  defines protocol oriented features.  They are usually explained in
  1858. the manual delivered with that specific library. If the options string ends
  1859. with a "P" (upper case p), the home directory of the user is appended.
  1860. This feature is need if you want to allow uploading to home directories as
  1861. well as to the global upload directory. See xpr.man for more info.
  1862.  
  1863. Xpr will write upload and download report lines to /etc/adm/xpr.log, if the
  1864. transfer protocol support file length and transfer progress indication.
  1865.  
  1866.  
  1867. *****************************************************************************
  1868. 2.11 /etc/adm/ directory
  1869.  
  1870. /etc/adm directory is used to store log files generated by AXsh and some
  1871. external programs.  Administrator should check these files regularly. The
  1872. following files may be found on the active AXsh's /etc/adm directory:
  1873.  
  1874. ------rwed--------     5     2140 02-Mar-94 23:40 Answers
  1875. ------rwed--------     3     1218 05-Mar-94 23:37 Xpr.log
  1876. ------rwed--------    16     8148 06-Mar-94 02:07 netlog
  1877. ------rwed--------     3     1458 06-Mar-94 00:37 usage.log
  1878.  
  1879. Plus some other Log files, if AXsh is currently active.  Xpr.log contains
  1880. short information about files sent or received using xpr.  Answers is the
  1881. file, where AXsh:bin/register stores users' answers. Netlog contains short
  1882. status lines of net activity and usage.log shows user login/logout times
  1883. with inline-times. These lines can be analyzed with userstat, which reads
  1884. xpr.log, netlog and usage.log and produces interesting summaries.
  1885.  
  1886.  
  1887. *****************************************************************************
  1888. 2.12 /etc/Questionnaire
  1889.  
  1890. Questionnaire file contains all the administrator-defined questions asked by
  1891. AXsh:bin/register when a new user logs in the first time.  The questionnaire
  1892. file may look like this:
  1893.  
  1894.     Street address: 
  1895.     Postal address:
  1896.     Town: 
  1897.     Phone: 
  1898.     Age: 
  1899.     Computer: 
  1900.     Do you know how to use Amiga Shell? 
  1901.     Do you know how to use Unix? 
  1902.  
  1903. Answers to these questions are written to the answers-file.
  1904.  
  1905.  
  1906. *****************************************************************************
  1907. 2.13 /etc/adm/Answers
  1908.  
  1909. All the answers users give to your questions in /etc/questionnaire file are
  1910. stored in /etc/adm/answers.  It's important that you check these every day
  1911. and kick jokers out of your system.  If the user have `missed' some
  1912. questions, but looks OK (check his /etc/adm/Log.xx.xx.xx), it's better that
  1913. you just send him or her mail and ask the missing question again and add it
  1914. to the answers file.
  1915.  
  1916.  
  1917. *****************************************************************************
  1918. 2.14 /etc/exampleuser/ directory
  1919.  
  1920. The contents of the /etc/exampleuser/ directory will be copied to every new
  1921. user's home directory after registering.  Default /etc/exampleuser/ looks
  1922. like this:
  1923.  
  1924. ------rwed-------- 1 388    02-Jul-92 13:54 .login
  1925. ------rwed-------- 1 332    02-Jul-92 13:54 .logout
  1926. ------rwed-------- 1 38        02-Jul-92 13:54 .plan
  1927. ------rwed-------- 1 37        02-Jul-92 13:54 .project
  1928. ------rwed-------- 1 83        02-Jul-92 13:54 .signature
  1929.  
  1930. You may add your own files there as well, but try to avoid that because most
  1931. of the users keep them in their home directory even if they don't need them.
  1932. Extra files eat storage space.
  1933.  
  1934.  
  1935. *****************************************************************************
  1936. 2.15 /etc/register.*
  1937.  
  1938. These files have the texts that are sent to a new user when he registers.
  1939. Register.script is a script file (or a command) which is invoked after an
  1940. account is created.  The new account (login name) is given as an argument.
  1941. The example register.script sends a pre-written mail message to new users and
  1942. displays register.after-textfile.
  1943.  
  1944.  
  1945. *****************************************************************************
  1946. 2.16 /etc/nologin
  1947.  
  1948. When this file exists, no logins are allowed and any non-superuser users
  1949. currently on the system are kicked out. The file should contain the reason
  1950. for shutdown, like "Owner's game session is about to begin" :-)
  1951. Superusers get a polite message which informs them that the system is
  1952. possibly going down and it would be nice if they logged out.
  1953.  
  1954.  
  1955. *****************************************************************************
  1956. 3.0 Networking under AXsh
  1957.  
  1958. One of the most powerful features of AXsh is its cabability to operate in a
  1959. network.  This means that you can send files, news and mail between two
  1960. Amigas or between an Amiga and a Unix machine.  Usually one Amiga running
  1961. AXsh collects news from Internet and then deliveres them to a smaller net of
  1962. AXsh systems.  UUCP connection is recommended when doing Internet access.
  1963.  
  1964. You can also use other transport mechanisms, like TrapDoor to exchange the
  1965. packets, but you also need some scripts to handle the packing and unpacking.
  1966. AXshSZIMEX03.lha includes AREXX scripts to be used with TrapDoor and the
  1967. packet is either included in the package or available in a seperate support
  1968. package.
  1969.  
  1970.  
  1971. *****************************************************************************
  1972. 3.1 Network installation
  1973.  
  1974. For networking you need the programs AXsh:bin/net, AXsh:bin/rn,
  1975. AXsh:bin/mailserver and C:LhA.  You also need xprzmodem.library (version 2.52
  1976. is recommended). If you don't have much RAM, you should define %tempdir:  in
  1977. /etc/rc to point somewhere in disk.
  1978.  
  1979.  
  1980. *****************************************************************************
  1981. 3.2 Creating a node
  1982.  
  1983. What you have to do is define the machine name, hub name and password in
  1984. /etc/rc and the event time, event number (the number the hub is reachable
  1985. from) and the event command in /etc/rc.server .  Refer to the sections 2.1
  1986. and 2.2 for details.
  1987.  
  1988. The admistrator in the hub will have to make an account for your machine and
  1989. insert the node into the mail system routetable.  You also have to discuss
  1990. with him/her about the calling time, it is not very nice if all nodes try to
  1991. call in the same time.  If the hub allows the command net for normal users,
  1992. you can even register the node yourself.  The account for a node is excactly
  1993. the same as accounts for normal users.  Your machine must also be added to
  1994. the /usr/spool/mail/Routetable and /usr/spool/news/Sys so that you can
  1995. receive mail and news.
  1996.  
  1997. The same additions have to be done in your system.  You have to create the
  1998. Routetable file, which has lines like:
  1999.  
  2000.     <remote-node>    <route-node>
  2001.  
  2002. The <remote-node> is the name of the system you are sending mail to and the
  2003. <route-node> is the system the mail is forwarded to (usually your hub).  The
  2004. <remote-node> must start from the first column, but there may be any number
  2005. of spaces and TABs between the two names.
  2006.  
  2007. If you're not the hub and your system's name is (for example) pasbox.hro.fi
  2008. and your hub's name is tap.tre.fi, your routetable would look like this:
  2009.  
  2010.     tap.tre.fi    tap.tre.fi
  2011.     7heaven.ola.fi    tap.tre.fi
  2012.  
  2013. This means that all the messages going to 7heaven.ola.fi are first delivered
  2014. to tap.tre.fi, which forwards them to 7heaven.ola.fi, because you don't have
  2015. a direct connection to 7heaven.ola.fi.
  2016.  
  2017. The Sys file defines what newsgroups are forwarded and where.  See the
  2018. example sys file for explanations about how to set it up.
  2019.  
  2020.  
  2021. *****************************************************************************
  2022. 3.3 Creating a new network
  2023.  
  2024. If there are some AXsh sites on your neighbourhood, but no working network,
  2025. it's highly recommended, that you make one.  By using AXnet you can transfer
  2026. news, mail and files between systems.  AXsh uses a star model in network,
  2027. e.g.  one system is a hub and other systems make networking calls to hub.  By
  2028. using this method maximum delay between sending and receiving a message is
  2029. two days, if every node polls the hub once a day.  It is also possible to use
  2030. a tree structure, but the message delays will get longer.  To get the best
  2031. possible connections available, it's highly recommended that AXnets are also
  2032. connected to Internet via UUCP.
  2033.  
  2034. Creating a new network is quite easy. For one thing you have to decide who's
  2035. going to be the hub.  Then you have to agree about passwords and machine
  2036. names of each node.  The hub system then creates accounts for the other
  2037. machines, and depending on the installation gives them system privileges.
  2038.  
  2039. All nodes has to update /usr/spool/mail/routetable.  Routetable contains
  2040. information about nodes attached in the network and tells where to forward a
  2041. message, if the receiver's machine is not the same as sender's.
  2042.  
  2043. One more thing:  if you're using network cababilities of AXsh, put lha packer
  2044. to your C: directory!  This may become configurable in the future versions.
  2045.  
  2046. *****************************************************************************
  2047. 3.4 Connecting to Internet
  2048.  
  2049. Use UUCP. AXsh mail and news programs should be configurable enough to
  2050. co-exist peacefully with the UUCP system.  However, if you have problems,
  2051. don't hesitate to contact me (see the E-mail addresses in the end of this
  2052. document). We also have a NNTP news importer available.
  2053.  
  2054. Since 1.3 you should also be able to use AXsh Rn to read CNews news.
  2055. However, to mix AXsh successfully with either UUCP or CNews (or any other
  2056. news system) you have to configure the news and mail systems appropriately
  2057. and you MUST define an external postnews command.
  2058.  
  2059.  
  2060. *****************************************************************************
  2061. 3.5 UUCP - Using AXsh for remote login with UUCP (1.16D)
  2062.  
  2063. The /etc directory or /info/InOtherSystems contains files UUCP-startup2.0 and
  2064. UUCP-passwd-entry, which may help you.  With UUCP you cannot use newshell to
  2065. launch AXsh like the AX-server does, because newshell returns straight away
  2066. and getty will assume that it can use the serial again.
  2067.  
  2068. UUCP-startup should have in ks 2.0:
  2069.  
  2070.     AXsh <>newaux:serial.device/0/shared/checkcd -log
  2071.  
  2072. or in ks1.3:
  2073.  
  2074.     AXsh <newaux:serial.device/0/shared/checkcd >newaux: -log
  2075.  
  2076. A getty-entry cannot use redirections, so you must have the above in a script
  2077. file, which you then execute from the getty-entry:
  2078.  
  2079.     bbs,*,444,0,(BBS-login),ram:,execute AXsh:etc/UUCP-startup
  2080.  
  2081. With UUCP you should also do some changes to /etc/rc.news (and /etc/rc.mail).
  2082.  
  2083. If you are having unexpected gurus or other weird things happen, you might
  2084. try to cure it by putting a stack command in the startup file before the AXsh
  2085. is launched.  All the programs in the AXsh distribution usually run with the
  2086. default 4k stack, but external programs may consume more stack:
  2087.  
  2088.     stack 30000
  2089.     AXsh <>newaux:serial.device/0/shared/checkcd -log
  2090.  
  2091.  
  2092. *****************************************************************************
  2093. 3.6 AXnet mail
  2094.  
  2095. When a user sends mail, it is usually stored in the AXsh:usr/spool/mail
  2096. directory (this can be changed by modifying /etc/rc) with the same name as
  2097. the user's login name.  If the message is going to a remote system, it is
  2098. stored in the same directory as all the other mail, and its name is the same
  2099. as the remote system's (login) name.  When a new mail message arrives, the
  2100. datestamp of the system mailbox changes and AXsh will inform the user about
  2101. new mail by saying:
  2102.  
  2103.     New mail has arrived!
  2104.  
  2105. You can also use UUCP sendmail, just configure the appropriate entries in the
  2106. /etc/rc.mail-file. In that case, also set %mail: in /etc/rc to UUMAIL: or
  2107. assign UUMAIL: to the AXsh mail system directory. If you mix AXsh mail and
  2108. UUCP mail, you MUST define an external sendmail.
  2109.  
  2110.  
  2111. *****************************************************************************
  2112. 3.7 AXnet news
  2113.  
  2114. User's newsgroup state information is stored in the home directory in the
  2115. file .rnnewsrc and the readnews preferences in the file .rnprefs.  These
  2116. files are read in when the user starts rn.  Rn updates these files when user
  2117. quits back to shell.
  2118.  
  2119. Each AXsh system should have at least one local newsgroup as a news channel
  2120. for local users about new stuff in system etc.  In addition to this there is
  2121. usually several public newsgroups which are delivered through net to all
  2122. systems.  If there's a system delivering messages from Internet to a local
  2123. AXnet, daily newsfeed may contain THOUSANDS of messages.  Every day.  That's
  2124. why it's reasonable to delete old messages by using rn tidy.
  2125.  
  2126. The file /usr/spool/news/NewsGroups has a number after each newsgroup name
  2127. and this defines how many days a specific message is kept in the system.  All
  2128. news articles that are older than that are deleted when you run rn tidy.  You
  2129. can also tell to rn what is the maximum number of articles in one group.
  2130.  
  2131.     rn tidy -m<messages>
  2132.  
  2133. For example
  2134.  
  2135.     rn tidy -m300
  2136.  
  2137. would delete all the messages older than the days defined in Newsgroups-file
  2138. and if there's more than 300 messages in a group, it will delete all but the
  2139. last 300.  This can be automatized by using cron.
  2140.  
  2141. If you use CNews or plain UUCP, you should use its own expire-mechanism
  2142. instead of rn tidy.  The new rn will find out if the .lowest files are not
  2143. upto date and will do a quick 'binary search' scan to find the article with
  2144. the lowest number.  Because of this rn startup may take slightly longer,
  2145. especially if the .lowest files are not upto date.
  2146.  
  2147. You can also send binary files between systems with:
  2148.  
  2149.     rn net <host> send <filename>
  2150.  
  2151. However, this is only possible in an AXsh net. However, you still may use
  2152. other tranport mechanisms than the "net" program. You should also notice that
  2153. the host must exist and be directly reachable. There will be NO error
  2154. messages if you make a mistake, the file will be appended to a file in
  2155. the news directory and it will never be sent anywhere. So, be careful when
  2156. you send files and check the news directory periodically.
  2157.  
  2158. There also is an NNTP news importer available, if you have an account in
  2159. a suitable U*ix system.
  2160.  
  2161.  
  2162. *****************************************************************************
  2163. 4.0 Registering AXsh
  2164.  
  2165. This section is very important.  When you receive the AXsh package and have
  2166. installed it correctly and DO want new versions of AXsh, PLEASE let me know
  2167. that you exist. Send some mail. It guarantees that you are on my list.
  2168. You also should send the small registering fee/donation (US$ 30, 150 FIM,
  2169. in any currency), because you will then get the sources and some additional
  2170. programs and manual pages. I may also release the sources for the public,
  2171. in that case this doesn't apply.
  2172.  
  2173. Please, DON'T send cheques, because it costs me about 60 FIM to cash them.
  2174. And 60 FIM is 40% of the original 150 FIM cheque ! It sure costs less to
  2175. exchange currency and I don't even have to do that, if you send FIM or US$.
  2176. If your bank does direct international money transfers for less, you can
  2177. also send the money directly to my account:
  2178.  
  2179. Pasi Ojala
  2180. Finland - TSOP Kyröskoski 506326-559792
  2181.  
  2182. And remember:
  2183. Even the AXshDemo package is shareware and should only be used for evaluation.
  2184. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2185.  
  2186. The bug report form is needed, if you find a bug or an unpleasant feature
  2187. from AXsh.  AXsh is not bug free, but it's quite well behaving program at the
  2188. moment.  You can also send reports and suggestions without the form. In fact
  2189. the form is only needed if you use conventional snail-mail. I prefer E-mail,
  2190. but conventional mail can also be used if you don't have Internet access
  2191. (or you don't know how to use Fidonet-Internet-gateway).
  2192.  
  2193. If you have developed an application for AXsh, let me know about it by
  2194. filling the Application report form and sending it to me.
  2195.  
  2196.  
  2197. You can send all the forms via Internet to 
  2198.  
  2199.     albert@cs.tut.fi OR albert@cc.tut.fi
  2200.  
  2201. or use conventional mail:
  2202.  
  2203.     Pasi Ojala
  2204.     Telkontie 50
  2205.     39230 Osara
  2206.     FINLAND
  2207.  
  2208.  
  2209. *****************************************************************************
  2210. 4.1 Registering form
  2211.  
  2212. Name of the system administrator:
  2213.  
  2214. _____________________________________________________________________
  2215.  
  2216. Name of the system:
  2217.  
  2218. _____________________________________________________________________
  2219.  
  2220. System's phone number, highest baud rate and working hours:
  2221.  
  2222. _____________________________________________________________________
  2223.  
  2224. Administrator's full address:
  2225.  
  2226.  
  2227.  
  2228. _____________________________________________________________________
  2229.  
  2230. Administrator's phone number:
  2231.  
  2232.  
  2233. _____________________________________________________________________
  2234.  
  2235. E-mail address:
  2236.  
  2237. _____________________________________________________________________
  2238.  
  2239. Current version of AXsh:
  2240.  
  2241.  
  2242. _____________________________________________________________________
  2243.  
  2244.  
  2245. *****************************************************************************
  2246. 4.2 Bug report form
  2247.  
  2248. Name of the system administrator:
  2249.  
  2250. _____________________________________________________________________
  2251.  
  2252. System's phone number, highest baud rate and working hours:
  2253.  
  2254. _____________________________________________________________________
  2255.  
  2256. Administrator's full address:
  2257.  
  2258.  
  2259. _____________________________________________________________________
  2260.  
  2261. Administrator's phone number:
  2262.  
  2263. _____________________________________________________________________
  2264.  
  2265. E-mail address:
  2266.  
  2267. _____________________________________________________________________
  2268.  
  2269. Current version of AXsh:
  2270.  
  2271. _____________________________________________________________________
  2272.  
  2273. Description of the bug/feature:
  2274.  
  2275. _____________________________________________________________________
  2276.  
  2277.  
  2278. _____________________________________________________________________
  2279.  
  2280.  
  2281. _____________________________________________________________________
  2282.  
  2283.  
  2284. _____________________________________________________________________
  2285.  
  2286.  
  2287. _____________________________________________________________________
  2288.  
  2289.  
  2290. _____________________________________________________________________
  2291.  
  2292.  
  2293. _____________________________________________________________________
  2294.  
  2295.  
  2296. *****************************************************************************
  2297. 4.3 New application report form
  2298.  
  2299. Name of the author:
  2300.  
  2301. _____________________________________________________________________
  2302.  
  2303. Author's full address:
  2304.  
  2305.  
  2306. _____________________________________________________________________
  2307.  
  2308. Author's phone number:
  2309.  
  2310. _____________________________________________________________________
  2311.  
  2312. Application name and current version:
  2313.  
  2314. _____________________________________________________________________
  2315.  
  2316. Description of the application:
  2317.  
  2318. _____________________________________________________________________
  2319.  
  2320.  
  2321. _____________________________________________________________________
  2322.  
  2323.  
  2324. _____________________________________________________________________
  2325.  
  2326.  
  2327. _____________________________________________________________________
  2328.  
  2329.  
  2330. _____________________________________________________________________
  2331.  
  2332.  
  2333. _____________________________________________________________________
  2334.  
  2335.  
  2336. _____________________________________________________________________
  2337.  
  2338.  
  2339. _____________________________________________________________________
  2340.  
  2341.  
  2342. _____________________________________________________________________
  2343.  
  2344.  
  2345. *****************************************************************************
  2346. 4.4 Author
  2347.  
  2348.     Pasi 'Albert' Ojala    albert@cs.tut.fi OR albert@cc.tut.fi
  2349.  
  2350.  
  2351. The translators:
  2352.  
  2353. Pasi Ojala        <albert@cs.tut.fi>        Finnish translation
  2354. Cedric Beust         <Cedric.Beust@sophia.inria.fr>    French translation
  2355. Soeren Berg Hansen    <siera@imada.ou.dk>        Danish translation
  2356. Sebastian Delmont    <sdelmont@dino.conicit.ve>    Spanish translation
  2357. Morgan Ericsson        <morgan@krynn.augs.se>        Swedish translation
  2358. Mirko Thiesen                        Deutsch translation
  2359.  
  2360.  
  2361. The idea behind AXsh originally by:
  2362.  
  2363. Juha 'Comm' Tuominen
  2364.  
  2365.  
  2366. *****************************************************************************
  2367. 4.5 Copyright notices
  2368.  
  2369. Unix is a registered trademark of AT&T
  2370.  
  2371. Amiga is a registered trademark of Commodore Business Machines, Inc.
  2372.  
  2373. AmigaOS is a registered trademark of Commodore Business Machines, Inc.
  2374.  
  2375.  
  2376. AXsh and Digital Design are not registered trademarks, but using them without
  2377. permission is bad for your teeth.
  2378.  
  2379.